1. The Field of the Invention
The present invention relates generally to monitoring and data collection in communications networks. More particularly, embodiments of the invention relate to systems and methods for collecting data related to communication system errors that are not easily detected.
2. The Relevant Technology
As a result of advances in technology and enormous increases in the number of wireless device users, the size and complexity of wireless communications networks has greatly increased. One consequence of such increases in size and complexity has been a relative increase in operational and performance problems associated with communications networks. Reliability issues, such as dropped calls, lack of coverage, poor audio quality, and application failure often lead to user frustration and to increased costs. As new services are introduced that use even more complex technology, exercise different usage modalities, and place additional demands on networks, network performance continues to be a prime concern. In fact, quality of service has a direct impact on a service provider's profitability. Therefore, improving quality of service is a top priority for service providers.
Network monitoring solutions are widely employed by service providers. However, currently available solutions typically monitor and diagnose only subsets of the overall telecommunications system and therefore do not provide the holistic view of network and device performance needed to efficiently identify and resolve quality issues. The resulting operational metrics from a subset of the telecommunications system can sometimes be indicative of a broader, system-wide problem, but rather than providing answers, problem resolution entails guesswork and extended troubleshooting, which wastes valuable resources.
Another monitoring approach known in the art involves pre-programmed service monitors, where specific elements perform service transactions to emulate “real-world” transaction activity; end to end performance is then monitored and the results reported. While these solutions catch systematic failures, they cannot detect intermittent or dispersed problems, subtle impairments, or device or end user specific issues. Further, they can only test anticipated usage scenarios and fail to adapt to new usages and interactions between services.
While conventional solutions for monitoring networks may contribute in some way to improving quality of service in a communication network, they typically rely on automatically detecting the occurrence or nonoccurrence of an identifiable failure, impairment or error, which may be collectively referred to as “events.” Significantly, many system events are difficult to detect on an automated basis. For example, if an application on a wireless device runs slowly, it is possible the application thinks everything is working correctly. From a user's perspective the slow run-time indicates something is wrong, while from the software perspective the system is running correctly. This results in no data being collected around the this type of event because the system does not recognize an event.
In order to collect data relating to these events, some solutions have been proposed or implemented that combine customer care calls with extracting data from the attached wireless device. This model relies on the user calling in to a care agent who can then “probe” their system for diagnostic information to resolve a problem. Although this model may help in identifying some types of events, it can be frustrating to users who may have to wait in a calling queue until their call can be taken. Additionally, users may have difficulty providing sufficient contextual and environmental data from the time of the event to help the care agent and network administrators solve the problem. Further, by the time a user talks with an agent to report a problem, any data collected as a result of a probe may lag so far behind the occurrence of the soft event as to be virtually worthless for purposes of analysis.
Thus, what is needed are systems and methods that to enable the collection of more relevant data related to system events.